/*Nama File : command.h
  Pembuat	: Karina Novita Suryani - 23512187 
  tanggal 	: 31 Oktober 2012
  */

#ifndef _COMMAND_H
#define _COMMAND_H

using namespace std;

#include <vector>
#include <string>
#include <sstream>
#include "../DateTime/DateTime.h"


class command {
	private :
		vector<string> argument; //daftar argumen dalam perintah
		int durSecond; //durasi 
		DateTime tStart; //waktu mulai
		
	public :
	//empat sekawan
		command(); //ctor
		command(string ,int ,DateTime ); //ctor berparameter
		/* prekondisi : DateTime valid*/
		command(const command& ); //cctor
		~command(); //dtor
		command& operator=(const command&); //operator=
		friend int operator== (const command&, const command&); //overload operator kesamaan
	
	//setter
		void setArgument(string);
		/*I.S. sembarang */
		/*F.S. argument = s*/
		
		void setDurSecond(int);
		/*I.S. sembarang */
		/*F.S. durSecond = ds */
		
		void setTStart(DateTime);
		/*I.S. sembarang */
		/*F.S. tStart = dt*/
		
	//getter
		string getArgument(int);
		/*pre kondisi : argument tidak kosong*/
		int getCountArgument();
		/*pre kondisi : sembaran*/
		int getDurSecond();
		/*pre kondisi : sembarang*/
		DateTime getTStart();
		/*pre kondisi : sembarang*/
		
	//operasi tambahan
		string ToString();
		/*pre kondisi : sembarang*/
	
};

#endif 
